/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package acceso_datos;

import datos.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

/**
 *
 * @author Pablo
 */
public class PersonaDB {
    public boolean grabar(Persona persona) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query = "insert into persona values("
                + "'" + persona.getCedula() 
                + "','" + persona.getNombre() 
                + "','" + persona.getApellido() 
                +"','"+persona.getDireccion()
                + "','"+persona.getTelefono()
                +"')";
        Boolean resultado = db.ingreso(query);
        db.cerrarConexion();
        return resultado;               
    }
    
    public int modificar(Persona persona) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="update persona set "
                + "nombre='" + persona.getNombre() + "', "
                + "apellido='" + persona.getApellido() + "', "
                + "direccion='" + persona.getDireccion() + "', "

                + "telefono='" + persona.getTelefono() + "', "
                + " where cedula='" + persona.getCedula() + "'";
        int resultado = db.modificacioneliminacion(query);
        db.cerrarConexion();
        return resultado;
    }
    public int eliminar(String id) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="delete from persona where cedula='" + id + "'";
        int resultado = db.modificacioneliminacion(query);
        db.cerrarConexion();
        return resultado;
    }
    public Persona buscar(String id) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from persona where cedula ='" + id + "'";
        ResultSet resultado = db.seleccion(query);
        Persona persona=null;
        if (resultado!=null) {
            resultado.next();
            persona = new Persona();
            persona.setCedula(resultado.getString("cedula"));
            persona.setNombre(resultado.getString("nombre"));
            persona.setApellido(resultado.getString("apellido"));
            persona.setDireccion(resultado.getString("direccion"));

            persona.setTelefono(resultado.getString("telefono"));
            
        }
        db.cerrarConexion();
        return persona;
    }
    public ArrayList listar() throws SQLException {
       OperacionesBase db = new OperacionesBase();
        String query="select * from persona ";
        ResultSet resultado = db.seleccion(query);
        Persona persona=null;
        ArrayList todos=new ArrayList();
        while (resultado.next()) {
            persona = new Persona();
            persona.setCedula(resultado.getString("cedula"));
            persona.setNombre(resultado.getString("nombre"));
            persona.setApellido(resultado.getString("apellido"));
            persona.setDireccion(resultado.getString("direccion"));          
            persona.setTelefono(resultado.getString("telefono"));
            todos.add(persona);
        }
        db.cerrarConexion();
        return todos;
    }
}
